/* 
 * File:   TBBFiltre.h
 * Author: amouro-m
 *
 * Created on 31 mai 2010, 20:45
 */

#ifndef _TBBFILTRE_H
#define	_TBBFILTRE_H

#include "tbb/pipeline.h"

#include "FractalPrinter.h"
#include "Computable.h"
#include "ResultPanel.h"

class TBBFiltre:public tbb::filter
{
public:
    TBBFiltre(Computable* computable, FractalPrinter* fp, ResultPanel* result_panel);
    TBBFiltre(const TBBFiltre& tbb_filtre);
    virtual ~TBBFiltre();

    void* operator() (void*);

private:
    Computable*        _computable;
    FractalPrinter*    _fp;
    ResultPanel*       _result_panel;
    int _next_area;
};

#endif	/* _TBBFILTRE_H */

